Si el dispositivo lo admite, puede asignar bloques de funciones completos a un canal de entrada o salida. Esto permite, por ejemplo, contar la frecuencia de los cambios de señal o escalar el valor de un canal con fines de mantenimiento.
Aquí asignará un canal de salida del dispositivo a un bloque de funciones. En este ejemplo, el bloque escala el valor de salida del canal.
Requisito: En el proyecto se vincula un dispositivo con una salida digital compatible con la asignación FB. Existe un bloque de funciones «Scale_Output_Int» con la siguiente implementación. Son importantes los atributos del propio bloque de funciones y antes del parámetro de salida con el que se procesa la salida del canal.
{attribute 'io_function_block'}
FUNCTION_BLOCK Scale_Output_Int
VAR_INPUT
iInput : INT;
iNumerator : INT;
iDenominator : INT :=1;
iOffset : INT := 0;
END_VAR
VAR_OUTPUT
{attribute 'io_function_block_mapping'}
iOutput : INT;
END_VAR
VAR
END_VAR
IF iDenominator <> 0 THEN
iOutput := TO_INT(TO_DINT(iInput) * TO_DINT(iNumerator) / TO_DINT(iDenominator)) + iOffset;
-
Abra el ⮫ Asignación de E/S pestaña del módulo de dispositivo. Haga doble clic en la salida que debe conectarse al bloque de funciones. Haga clic en el botón
«Add FB for IO channel». Se abre el cuadro de diálogo «Seleccionar bloque de funciones». En el lado izquierdo, se ve al menos el bloque de función «Scale_Output_int» debajo del nodo «Application». Las bibliotecas vinculadas en el proyecto que contienen los bloques de funciones correspondientes también se muestran para su selección.
-
Seleccione el POU
myScaleOutputInt.Tras hacer clic en «OK», se introduce en el diálogo de asignación la ruta del parámetro del bloque de función
iOutputen la «Variable». La ruta comprende el nombre de la aplicación, el nombre del canal del dispositivo y la salida FB seleccionada (ejemplo:App1.Out_4_Int_myScale_Output_Int_1.iOutput). -
Seleccione el canal y haga clic en el botón
«Ir a Instancia». El foco pasa a la pestaña «<nombre del dispositivo> Objetos IEC» y a la entrada creada para el nuevo objeto IEC
Out_4_Int_myScale_Output_Int_1. En esta vista en modo online, se ve el valor actual del parámetroiOutputpara el canalOut_4_Intescalado por el FB. También puede escribir y forzar el valor como en otras vistas de monitorización.
Para más información, consulte: ⮫ «Pestaña: '<nombre del dispositivo> Objetos IEC » y ⮫ «Atributo: io_function_block, io_function_block_mapping »